﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using Atlandiz.Data;
using FastReport;
using FastReport.Data;
using FastReport.Preview;
using FastReport.Utils;
using System.IO;

namespace Atlandiz.EnvanterVeZimmetYonetimi
{
    public partial class FormCihaz : DevExpress.XtraEditors.XtraForm
    {
        //MsSqlAccessLayer SQL = new MsSqlAccessLayer(".\\SQLExpress","TeknoEnva",true);

        public Report FReport = new Report();

        public int KayID;

        public FormCihaz()
        {
            InitializeComponent();
        }
       
        private void Cihaz_Load(object sender, EventArgs e)
        {

            if (!YardimciSiniflar.IsTableExist("ParaBirimleri"))
            {

                try
                {
                    String Sorgu = "CREATE TABLE [dbo].[ParaBirimleri](\n" +
                        "	[id] [int] IDENTITY(1,1) NOT NULL,\n" +
                        "	[ParaBirimi] [nvarchar](100) NULL,\n" +
                        "	[Sembol] [nvarchar](10) NULL,\n" +
                        "	[Kur] [money] NULL,\n" +
                        "	[isDefault] [bit] NULL,\n" +
                        " CONSTRAINT [PK_ParaBirimleri] PRIMARY KEY CLUSTERED \n" +
                        "(\n" + "	[id] ASC\n" +
                        ")WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]\n" +
                        ") ON [PRIMARY]\n";

                    Army.SQL().cmd(Sorgu);
                    Army.SQL().cmd("INSERT INTO ParaBirimleri(ParaBirimi,Sembol,Kur,isDefault) VALUES('Türk Lirası','TL',1,1)");
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Hata Mesajı:\n" + ex.Message.ToString(), "Hata Oluştu", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    this.Close();
                }
            }
            
            formuTemizle();
            if (KayID != 0)
            {
                KayitGetir();

            }
            _txtCihazGrubuString.Focus();
        }

        public void formuTemizle()
        {
            _txtCihazGrubuString.Text = "";
            _txtCihazTuruInt.Text = "";
            _txtCihazMarkaString.Text = "";
            _txtCihazMarkaInt.Text = "";
            _txtCihazModelString.Text = "";
            _txtCihazModelInt.Text = "";
            _txtSeriNoImeiString.Text = "";
            _txtServisTagString.Text = "";
            _datetimeCihazAlisTarihi.Text = "";
            _txtDepoString.Text = "";
            _txtDepoInt.Text = "";
            _txtTedarikciFirmaString.Text = "";
            _txtTedarikciFirmaInt.Text = "";
            _txtAciklamaString.Text = "";
            _btnSecCihazTuru.Focus();
            _txtMaliyetFiyatiMoney.Text = "";
            _txtZimmetDegeriMoney.Text = "";
            isHurdaForCihaz.Checked = false;
            
            ParaBirimleriListeGuncelle();
        }

        public void ParaBirimleriListeGuncelle()
        {

            DataTable dt = Army.SQL().GetDataTable("Select * from ParaBirimleri");
            string DefaultParaBirimi = "";

            if (dt.Rows.Count > 0)
            {
                foreach (DataRow x in dt.Rows)
                {
                    if (bool.Parse(x["isDefault"].ToString())) DefaultParaBirimi = x["Sembol"].ToString();
                    _txtMaliyetDoviz.Properties.Items.Add(x["Sembol"].ToString());
                    _txtZimmetDegeriDoviz.Properties.Items.Add(x["Sembol"].ToString());
                }
            }

            _txtMaliyetDoviz.Text = DefaultParaBirimi;
            _txtZimmetDegeriDoviz.Text = DefaultParaBirimi;
        }
       public void KayitGetir()
        {
            _txtCihazGrubuString.Text = Army.SQL().GetDataCell("Select ChzTur from CihazTur where ctID=(Select ctID from Cihaz where cID=" + KayID + ")");
            _txtCihazTuruInt.Text = Army.SQL().GetDataCell("Select ctID from CihazTur where ctID=(Select ctID from Cihaz where cID=" + KayID + ")");
            _txtCihazMarkaString.Text = Army.SQL().GetDataCell("Select ChzMarka from CihazMarka where cmID=(Select cmID from Cihaz where cID=" + KayID + ")");
            _txtCihazMarkaInt.Text = Army.SQL().GetDataCell("Select cmID from CihazMarka where cmID=(Select cmID from Cihaz where cID=" + KayID + ")");
            _txtCihazModelString.Text = Army.SQL().GetDataCell("Select ChzModel from CihazModel where cmdID=(Select cmdID from Cihaz where cID=" + KayID + ")");
            _txtCihazModelInt.Text = Army.SQL().GetDataCell("Select cmdID from CihazModel where cmdID=(Select cmdID from Cihaz where cID=" + KayID + ")");
            _txtSeriNoImeiString.Text = Army.SQL().GetDataCell("Select SeriNoIMEI from Cihaz where cID=" + KayID);
            _txtServisTagString.Text = Army.SQL().GetDataCell("Select ServisTag from Cihaz where cID=" + KayID);
            _txtEtiketString.Text = Army.SQL().GetDataCell("Select Etiket from Cihaz where cID=" + KayID);
            _datetimeCihazAlisTarihi.DateTime = DateTime.Parse(Army.SQL().GetDataCell("Select cAlimTarihi from Cihaz where cID=" + KayID));
            _txtTedarikciFirmaString.Text = Army.SQL().GetDataCell("Select tFirmaUnvan from Tedarikci where tID=(Select tID from Cihaz where cID=" + KayID + ")");
            _txtTedarikciFirmaInt.Text = Army.SQL().GetDataCell("Select tID from Cihaz where cID=" + KayID);

            _txtDepoString.Text = Army.SQL().GetDataCell("Select DepoAdi from Depolar where id=(Select DepoId from Cihaz where cID=" + KayID + ")");
            _txtDepoInt.Text = Army.SQL().GetDataCell("Select DepoId from Cihaz where cID=" + KayID);

            _txtAciklamaString.Text = Army.SQL().GetDataCell("Select Aciklama from Cihaz where cID=" + KayID);
            _txtMaliyetFiyatiMoney.Text = Army.SQL().GetDataCell("Select Maliyet from Cihaz where cID=" + KayID);
            _txtZimmetDegeriMoney.Text = Army.SQL().GetDataCell("Select ZimmetDegeri from Cihaz where cID=" + KayID);
            _txtMaliyetDoviz.Text = Army.SQL().GetDataCell("Select MaliyetDoviz from Cihaz where cID=" + KayID);
            _txtZimmetDegeriDoviz.Text = Army.SQL().GetDataCell("Select ZimmetDegeriDoviz from Cihaz where cID=" + KayID);

            isHurdaForCihaz.Checked = Convert.ToBoolean(Army.SQL().GetDataCell("Select isHurda from Cihaz where cID=" + KayID));

//            if (_txtMaliyetDoviz.Text.Length < 1) _txtMaliyetDoviz.Text = Army.ParaBirimi;
//            if (_txtZimmetDegeriDoviz.Text.Length < 1) _txtZimmetDegeriDoviz.Text = Army.ParaBirimi;
        }

        private void simpleButton4_Click(object sender, EventArgs e)
        {
            ListeCihaz cl = new ListeCihaz();
            cl.ShowDialog();
        }

        private void _btnFormuTemizle_Click(object sender, EventArgs e)
        {
            formuTemizle();
        }

        public void CMDKaydet() {
            if (_txtMaliyetFiyatiMoney.Text.ToString().Length < 1) _txtMaliyetFiyatiMoney.Text = "0";
            if (_txtZimmetDegeriMoney.Text.ToString().Length < 1) _txtZimmetDegeriMoney.Text = "0";
            if (_datetimeCihazAlisTarihi.Text.Length < 1) _datetimeCihazAlisTarihi.DateTime = DateTime.Today;

            if (_txtCihazGrubuString.Text == "")
            {
                MessageBox.Show("Cihaz Grubu Seçmelisiniz.");
                return;
            }

            if (_txtCihazMarkaString.Text == "")
            {
                MessageBox.Show("Marka Seçmelisiniz.");
                return;
            }

            if (_txtCihazModelString.Text == "")
            {
                MessageBox.Show("Model Seçmelisiniz.");
                return;
            }

            if (_txtDepoString.Text == "")
            {
                MessageBox.Show("Depo Seçmelisiniz.");
                return;
            }

            if (_txtTedarikciFirmaString.Text == "")
            {
                MessageBox.Show("Tedarikçi Seçmelisiniz.");
                return;
            }

            if (_txtSeriNoImeiString.Text == "")
            {
                MessageBox.Show("Seri No/IMEI Girmelisiniz.");
                return;
            }

            switch (KayID)
            {
                case 0:
                    {
                        //int VarmiBak = int.Parse(Army.SQL().GetDataCell("SELECT COUNT(*) FROM Cihaz c WHERE c.ctID=" + int.Parse(_txtCihazTuruInt.Text.ToString()) + " AND c.cmID=" + int.Parse(_txtCihazMarkaInt.Text.ToString()) + " AND c.cmdID=" + int.Parse(_txtCihazModelInt.Text.ToString()) + " AND c.SeriNoIMEI='" + _txtSeriNoImeiString.Text.ToString() + "'"));
                        int VarmiBak = int.Parse(Army.SQL().GetDataCell("SELECT COUNT(*) FROM Cihaz c WHERE c.isDeleted=0 AND c.SeriNoIMEI='" + _txtSeriNoImeiString.Text.ToString() + "'"));
                        if (VarmiBak > 0)
                        {
                            MessageBox.Show("Girdiğiniz SeriNo/IMEI daha önce zaten eklenmiş. Lütfen SeriNo/IMEI'i doğru giriniz.");
                            return;
                        }
                        else
                        {
                            Army.SQL().cmd("Insert Cihaz(ctID,cmID,cmdID,SeriNoIMEI,ServisTag,Etiket,cAlimTarihi,tID,Aciklama,Maliyet,ZimmetDegeri,MaliyetDoviz,ZimmetDegeriDoviz,DepoId) values('" + _txtCihazTuruInt.Text + "','" + _txtCihazMarkaInt.Text + "','" + _txtCihazModelInt.Text + "','" + _txtSeriNoImeiString.Text.ToString().Replace("'", "''") + "','" + _txtServisTagString.Text.ToString().Replace("'", "''") + "','" + _txtEtiketString.Text.ToString().Replace("'", "''") + "',Convert(datetime,'" + _datetimeCihazAlisTarihi.DateTime.ToString() + "',104)," + _txtTedarikciFirmaInt.Text + ",'" + _txtAciklamaString.Text.ToString().Replace("'", "''") + "'," + _txtMaliyetFiyatiMoney.Text.ToString().Replace(",", ".") + "," + _txtZimmetDegeriMoney.Text.ToString().Replace(",", ".") + ",'" + _txtMaliyetDoviz.Text.ToString().Replace("'", "''") + "','" + _txtZimmetDegeriDoviz.Text.ToString().Replace("'", "''") + "'," + _txtDepoInt.Text.ToString() + ")");
                            formuTemizle();
                        }
                    };
                    break;

                default:
                    {

                        //int VarmiBak = int.Parse(Army.SQL().GetDataCell("SELECT COUNT(*) FROM Cihaz c WHERE c.isDeleted=0 c.ctID=" + int.Parse(_txtCihazTuruInt.Text.ToString()) + " AND c.cmID=" + int.Parse(_txtCihazMarkaInt.Text.ToString()) + " AND c.cmdID=" + int.Parse(_txtCihazModelInt.Text.ToString()) + " AND c.SeriNoIMEI='" + _txtSeriNoImeiString.Text.ToString() + "' AND c.cID<>" + KayID));
                        int VarmiBak = int.Parse(Army.SQL().GetDataCell("SELECT COUNT(*) FROM Cihaz c WHERE c.isDeleted=0 AND c.SeriNoIMEI='" + _txtSeriNoImeiString.Text.ToString() + "' AND c.cID<>" + KayID));

                        if (VarmiBak > 0)
                        {
                            MessageBox.Show("Girdiğiniz SeriNo/IMEI daha önce zaten eklenmiş. Lütfen SeriNo/IMEI'i doğru giriniz.");
                            return;
                        }
                        else
                        {
                            if (isHurdaForCihaz.Checked)
                            {

                                //KONTROL 1, Tutanak var mı?

                                if (Convert.ToInt32(Army.SQL().GetDataCell("Select COUNT(*)Varmi from Nesneler where Urun_ID=" + KayID + " AND UrunTipi=1 and isHurdaTasfiyeTutanak=1")) < 1)
                                {
                                    MessageBox.Show("Ürünün Hurda/Tasfiye Tutanağı eklenmemiş. Kayıt işlemi iptal edildi!");
                                    return;
                                }

                                //KONTROL 2, Zimmet Dışı mı?
                                string Sorgu = "SELECT \n" +
                                        "(CASE WHEN sum(ZimmetHKutuk.EvrakCinsi) IS NULL THEN 0 ELSE sum(ZimmetHKutuk.EvrakCinsi) END) [VARMI]\n" +
                                        "FROM ZimmetHKutuk\n" +
                                        "LEFT JOIN ZimmetHDetay ON ZimmetHKutuk.zID = ZimmetHDetay.zID\n" +
                                        "WHERE\n" +
                                        "ZimmetHDetay.UrunTipi=1 AND\n" +
                                        "ZimmetHDetay.UrunID=" + KayID + " \n" +
                                        "AND ZimmetHKutuk.isDeleted=0";

                                    int UrunZimmetDurumu = int.Parse(Army.SQL().GetDataCell(Sorgu));
                                    if (UrunZimmetDurumu > 0)
                                    {
                                        MessageBox.Show("Ürün halihazırda başka bir zimmet altında.\nZimmetli olan bir ürün zimmet çıkış işlemi yapılmadan Hurda/Tasfiye durumuna sokulamaz!\n\n", "Hatalı Hurda/Tasfiye İşlemi", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                                        return;
                                    }

                            }

                            Army.SQL().cmd("Update Cihaz Set ctID='" + _txtCihazTuruInt.Text + "', cmID='" + _txtCihazMarkaInt.Text + "', cmdID='" + _txtCihazModelInt.Text + "', SeriNoIMEI='" + _txtSeriNoImeiString.Text.ToString().Replace("'", "''") + "', ServisTag='" + _txtServisTagString.Text.ToString().Replace("'", "''") + "', Etiket='" + _txtEtiketString.Text.ToString().Replace("'", "''") + "', cAlimTarihi=Convert(datetime,'" + _datetimeCihazAlisTarihi.DateTime.ToString() + "',104), tID='" + _txtTedarikciFirmaInt.Text + "', Aciklama='" + _txtAciklamaString.Text.ToString().Replace("'", "''") + "',Maliyet=" + _txtMaliyetFiyatiMoney.Text.ToString().Replace(",", ".") + ",ZimmetDegeri=" + _txtZimmetDegeriMoney.Text.ToString().Replace(",", ".") + ",MaliyetDoviz='" + _txtMaliyetDoviz.Text.ToString().Replace("'", "''") + "',ZimmetDegeriDoviz='" + _txtZimmetDegeriDoviz.Text.ToString().Replace("'", "''") + "',DepoId=" + _txtDepoInt.Text.ToString() + ",isHurda=" + Convert.ToInt32(isHurdaForCihaz.Checked) + " where cID=" + KayID);
                            MessageBox.Show("Kayıt {" + KayID + "} Güncellendi.");
                            this.Close();
                        }
                    };
                    break;
            }        
        }
        private void _btnKaydet_Click(object sender, EventArgs e)
        {
            CMDKaydet();
        }

        private void _btnCihazlarListesi_Click(object sender, EventArgs e)
        {
            ListeCihaz chzl = new ListeCihaz();
            chzl.ShowDialog();
        }

        private void _btnKapat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void _btnSecCihazTuru_Click(object sender, EventArgs e)
        {
            ListeCihazGrubu ctl = new ListeCihazGrubu();
            ctl.ForSelection = true;
            ctl.ShowDialog();

            if (Army.EventConfirm == true)
            {
                _txtCihazTuruInt.Text = Army.SecilenID.ToString();
                _txtCihazGrubuString.Text = Army.SQL().GetDataCell("Select ChzTur from CihazTur where ctID=" + _txtCihazTuruInt.Text);
            }
        }

        private void _btnSecCihazModel_Click(object sender, EventArgs e)
        {
            ListeCihazModel cmdl = new ListeCihazModel();
            cmdl.ForSelection = true;
            cmdl.Filtre = _txtCihazMarkaString.Text;
            cmdl.ShowDialog();

            if (Army.EventConfirm == true)
            {
                _txtCihazModelInt.Text = Army.SecilenID.ToString();
                _txtCihazModelString.Text = Army.SQL().GetDataCell("Select ChzModel from CihazModel where cmdID=" + _txtCihazModelInt.Text);
            }
        }

        private void _btnSecDepo_Click(object sender, EventArgs e)
        {
            ListeDepolar deposec = new ListeDepolar();
            deposec.ForSelection = true;
            deposec.ShowDialog();

            if (Army.EventConfirm == true)
            {
                _txtDepoInt.Text = Army.SecilenID.ToString();
                _txtDepoString.Text = Army.SQL().GetDataCell("Select DepoAdi from Depolar where id=" + _txtDepoInt.Text);
            }
        }

        private void _btnSecCihazMarka_Click(object sender, EventArgs e)
        {
            ListeCihazMarka cml = new ListeCihazMarka();
            cml.ForSelection = true;
            cml.ShowDialog();

            if (Army.EventConfirm == true)
            {
                _txtCihazMarkaInt.Text = Army.SecilenID.ToString();
                _txtCihazMarkaString.Text = Army.SQL().GetDataCell("Select ChzMarka from CihazMarka where cmID=" + _txtCihazMarkaInt.Text);
            }
        }

        private void _btnSecTedarikci_Click(object sender, EventArgs e)
        {
            ListeTedarikci tl = new ListeTedarikci();
            tl.ForSelection = true;
            tl.ShowDialog();

            if (Army.EventConfirm == true)
            {
                _txtTedarikciFirmaInt.Text = Army.SecilenID.ToString();
                _txtTedarikciFirmaString.Text = Army.SQL().GetDataCell("Select tFirmaUnvan from Tedarikci where tID=" + _txtTedarikciFirmaInt.Text);
            }
        }

        private void _btnSeriNoAta_Click(object sender, EventArgs e)
        {
            if (KayID > 0) {
                PopupAreYouSure EskiKayit = new PopupAreYouSure();
                Army.EventMessage="Bu eski bir kayıt.\nEski kayıtların zaten Serinumaraları tanımlıdır.\nBu işlem kayıtlı seri numasını değişmenize yol açar.\nDevam etmek istediğinize emin misiniz?";
                EskiKayit.ShowDialog();

                if (Army.EventConfirm == false) return;
            }
            
            string sn = Army.SQL().GetDataCell("SELECT (CASE WHEN MAX(c.SeriNoIMEI) is NULL then '" + Army.GetSetting("OtoSeriSiraString", "SN") + "999999' ELSE MAX(c.SeriNoIMEI) END) FROM Cihaz c WHERE c.SeriNoIMEI LIKE '" + Army.GetSetting("OtoSeriSiraString", "SN") + "%'");
            _txtSeriNoImeiString.Text = Army.GetSetting("OtoSeriSiraString", "SN") + ((int.Parse(sn.ToString().Replace(Army.GetSetting("OtoSeriSiraString", "SN"), ""))) + 1).ToString();
        }

        private void _txtDepoInt_EditValueChanged(object sender, EventArgs e)
        {

        }

        private void _btnDizayn_Click(object sender, EventArgs e)
        {
            DataTable forReport = new DataTable();
            switch (KayID)
            {
                case 0:
                    MessageBox.Show("Etiket Yazdırmak için önce verinin kaydedilmesi gerekir.", "Yeni Kayıt", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;
                default:

                    String Sorgu = "SELECT\n" +
                        "CihazTur.ChzTur [Cihaz Grubu],\n" +
                        "CihazMarka.ChzMarka [Marka],\n" +
                        "CihazModel.ChzModel [Model],\n" +
                        "Cihaz.SeriNoIMEI [Serino / İmei],\n" +
                        "Cihaz.ServisTag [Servis Tag],\n" +
                        "Cihaz.cAlimTarihi [Envanter Giriş Tarihi], \n" +
                        "Depolar.DepoAdi [Depo Adı],\n" +
                        "Cihaz.Maliyet [Maliyet],\n" +
                        "Cihaz.ZimmetDegeri [Zimmet Değeri],\n" +
                        "Cihaz.MaliyetDoviz [Maliyet Para Birimi],\n" +
                        "Cihaz.ZimmetDegeriDoviz [Zimmet Değeri Para Birimi]\n" +
                        "FROM Cihaz\n" +
                        "LEFT JOIN CihazModel ON Cihaz.cmdID = CihazModel.cmdID\n" +
                        "LEFT JOIN Depolar ON Cihaz.DepoId = Depolar.id\n" +
                        "LEFT JOIN CihazMarka ON Cihaz.cmID = CihazMarka.cmID\n" +
                        "LEFT JOIN CihazTur ON Cihaz.ctID = CihazTur.ctID\n" +
                        "WHERE (Cihaz.isDeleted = 0) AND (Cihaz.cID = " + KayID + ")\n";

                    forReport = Army.SQL().GetDataTable(Sorgu);
                    forReport.TableName = "Etiket";
                    FReport.RegisterData(forReport, "Etiket");
                    FReport.GetDataSource("Etiket").Enabled = true;

                    if (Army.ReportForCihaz.Length > 0 & File.Exists(Army.ProgramBaseEnvironmentPath + Army.ReportForCihaz))
                    {
                        FReport.Load(Army.ProgramBaseEnvironmentPath + Army.ReportForCihaz);
                    }
                    FReport.Design();
                    break;
            };
        }

        private void _btnOnizleme_Click(object sender, EventArgs e)
        {
            DataTable forReport = new DataTable();
            switch (KayID)
            {
                case 0:
                    MessageBox.Show("Etiket Yazdırmak için önce verinin kaydedilmesi gerekir.", "Yeni Kayıt", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;
                default:
                    if (Army.ReportForCihaz.Length > 0 & File.Exists(Army.ProgramBaseEnvironmentPath + Army.ReportForCihaz))
                    {
                        String Sorgu = "SELECT\n" +
                            "CihazTur.ChzTur [Cihaz Grubu],\n" +
                            "CihazMarka.ChzMarka [Marka],\n" +
                            "CihazModel.ChzModel [Model],\n" +
                            "Cihaz.SeriNoIMEI [Serino / İmei],\n" +
                            "Cihaz.ServisTag [Servis Tag],\n" +
                            "Cihaz.cAlimTarihi [Envanter Giriş Tarihi], \n" +
                            "Depolar.DepoAdi [Depo Adı],\n" +
                            "Cihaz.Maliyet [Maliyet],\n" +
                            "Cihaz.ZimmetDegeri [Zimmet Değeri],\n" +
                            "Cihaz.MaliyetDoviz [Maliyet Para Birimi],\n" +
                            "Cihaz.ZimmetDegeriDoviz [Zimmet Değeri Para Birimi]\n" +
                            "FROM Cihaz\n" +
                            "LEFT JOIN CihazModel ON Cihaz.cmdID = CihazModel.cmdID\n" +
                            "LEFT JOIN Depolar ON Cihaz.DepoId = Depolar.id\n" +
                            "LEFT JOIN CihazMarka ON Cihaz.cmID = CihazMarka.cmID\n" +
                            "LEFT JOIN CihazTur ON Cihaz.ctID = CihazTur.ctID\n" +
                            "WHERE (Cihaz.isDeleted = 0) AND (Cihaz.cID = " + KayID + ")\n";

                        forReport = Army.SQL().GetDataTable(Sorgu);
                        forReport.TableName = "Etiket";
                        FReport.RegisterData(forReport, "Etiket");
                        FReport.GetDataSource("Etiket").Enabled = true;
                        FReport.Load(Army.ProgramBaseEnvironmentPath + Army.ReportForCihaz);
                        FReport.Show();
                    }
                    else
                    {
                        MessageBox.Show("Bu işlem için uygun rapor dosyası bulunamadı.\nAyarlar'dan tanımlamalısınız.", "Rapor Dosyası Bulunamadı!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                    break;
            };
        }

        private void _btnYazdir_Click(object sender, EventArgs e)
        {
            DataTable forReport = new DataTable();
            switch (KayID)
            {
                case 0:
                    MessageBox.Show("Etiket Yazdırmak için önce verinin kaydedilmesi gerekir.", "Yeni Kayıt", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;
                default:
                    if (Army.ReportForCihaz.Length > 0 & File.Exists(Army.ProgramBaseEnvironmentPath + Army.ReportForCihaz))
                    {
                        String Sorgu = "SELECT\n" +
                            "CihazTur.ChzTur [Cihaz Grubu],\n" +
                            "CihazMarka.ChzMarka [Marka],\n" +
                            "CihazModel.ChzModel [Model],\n" +
                            "Cihaz.SeriNoIMEI [Serino / İmei],\n" +
                            "Cihaz.ServisTag [Servis Tag],\n" +
                            "Cihaz.cAlimTarihi [Envanter Giriş Tarihi], \n" +
                            "Depolar.DepoAdi [Depo Adı],\n" +
                            "Cihaz.Maliyet [Maliyet],\n" +
                            "Cihaz.ZimmetDegeri [Zimmet Değeri],\n" +
                            "Cihaz.MaliyetDoviz [Maliyet Para Birimi],\n" +
                            "Cihaz.ZimmetDegeriDoviz [Zimmet Değeri Para Birimi]\n" +
                            "FROM Cihaz\n" +
                            "LEFT JOIN CihazModel ON Cihaz.cmdID = CihazModel.cmdID\n" +
                            "LEFT JOIN Depolar ON Cihaz.DepoId = Depolar.id\n" +
                            "LEFT JOIN CihazMarka ON Cihaz.cmID = CihazMarka.cmID\n" +
                            "LEFT JOIN CihazTur ON Cihaz.ctID = CihazTur.ctID\n" +
                            "WHERE (Cihaz.isDeleted = 0) AND (Cihaz.cID = " + KayID + ")\n";

                        forReport = Army.SQL().GetDataTable(Sorgu);
                        forReport.TableName = "Etiket";
                        FReport.RegisterData(forReport, "Etiket");
                        FReport.GetDataSource("Etiket").Enabled = true;
                        FReport.Load(Army.ProgramBaseEnvironmentPath + Army.ReportForCihaz);
                        FReport.Print();
                    }
                    else
                    {
                        MessageBox.Show("Bu işlem için uygun rapor dosyası bulunamadı.\nAyarlar'dan tanımlamalısınız.", "Rapor Dosyası Bulunamadı!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                    break;
            };
        }

        private void simpleButton1_Click(object sender, EventArgs e)
        {
            ListeNesneler NesnelerListe = new ListeNesneler();
            NesnelerListe.Urun_Id = KayID;
            NesnelerListe.UrunTipi = 1;
            NesnelerListe.ShowDialog();
        }

        private void simpleButton2_Click(object sender, EventArgs e)
        {
            ListeServisBakim ServisListe = new ListeServisBakim();
            ServisListe.Urun_Id = KayID;
            ServisListe.UrunTipi = 1;
            ServisListe.ShowDialog();
        }
    }
}